package com.hoshiicloud.common.aop;

import org.apache.commons.lang3.StringUtils;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * <p>
 *
 * @author yl
 * @Title: Logable.java
 * </p>
 * <p>
 * @Package: com.hoshiicloud.common.aop
 * <p>
 * @Description: 插入操作日志注解
 * </p>
 * <p>
 * </p>
 */
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.METHOD})
public @interface Logable {

    /**
     * <p>
     *
     * @return
     * @Title: authName
     * </p>
     * <p>
     * @Description: 权限名称
     * </p>
     */
    String authName() default StringUtils.EMPTY;

    /**
     * <p>
     *
     * @return
     * @Title: param
     * </p>
     * <p>
     * @Description: 传入参数
     * </p>
     */
    String reqParam() default StringUtils.EMPTY;

    /**
     * <p>
     *
     * @return
     * @Title: logParam
     * </p>
     * <p>
     * @Description: 日志参数
     * </p>
     */
    String logableParam() default StringUtils.EMPTY;

}
